package com.engine.jucailinkq.attendance.attendanceanalysis.dto.clockpoint;

import com.engine.jucailinkq.attendance.enums.ClockPointEnum;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Map;

/**
 * 打卡卡点实体类
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ClockPointDTO {
    /**
     * 班次卡点时间
     * 例：2023-11-12 09:00
     */
    private String classTime;
    /**
     * 卡点类型
     * START 开始打卡
     * END 结束打卡
     */
    private ClockPointEnum pointType;
    /**
     * 打卡所在位置
     */
    private ClockPointEnum timeType;
    /**
     * 班次弹性时间
     * 例2023-11-12 09:15
     */
    private String elasticTime;
    /**
     * 卡点所属的班段类型
     * 对应ClassSegmentTypeEnum
     */
    private String classSegmentType;
    /**
     * 打卡时间
     */
    private Map<String, Object> clockTime;
    /**
     * 当为false时只记录该卡点异常，不计入业务运算及入库
     * true:记录，false：不计入
     */
    private boolean record;
    /**
     * 来源卡点，当record为false时，该值才有值
     */
    private ClockPointDTO resourceClockPointDTO;
}
